package com.jt.controller;

import com.jt.pojo.AxiosPOJO;
import org.springframework.web.bind.annotation.*;

//在后端接收前端axios发来的请求
@RestController
@CrossOrigin    //运行当前类中的所有方法执行跨域操作
public class AxiosController {
    /**
     * Axios入门案例
     *  url: http://localhost:8090/hello
     */
    @GetMapping("/hello")
    public String hello(){
        return "VUE的 ajax异步调用";
    }
    /**
     * 1.接收get请求的Id参数
     *   http://localhost:8090/axios?id=100
     */
    @GetMapping("/axios")
    public String getAxios(Integer id){
        return "动态获取数据："+id;
    }
    /**
     * restFul接收参数
     * http://localhost:8090/axios/100
     */
    @GetMapping("/axios/{id}")
    public String axios(@PathVariable Integer id){
        return "resFul接收参数"+id;
    }

    /**
     * 测试params对象数据传参
     * /axiosParams
     */
    @GetMapping  ("/axiosParams")
    public String params(Integer id){
        return "params参数接收成功"+id;
    }
    /**
     * 动态接收post请求 并且接收json参数
     *  url地址: /addAxios
     *  语法:
     *      如果前端传递的是一个JSON的字符串.
     *      则使用注解 @RequestBody 将json串转化为对象
     */
    @PostMapping   ("/addAxios")
    public AxiosPOJO addAxios(@RequestBody AxiosPOJO axiosPOJO){
        return axiosPOJO;
    }
    //利用Form表单接收数据
    @PostMapping   ("/addAxiosForm")
    public AxiosPOJO addAxiosForm(AxiosPOJO axiosPOJO){
        return axiosPOJO;
    }
}
